1. Field of the Invention
The present invention relates to a method and apparatus for generating a code in an asynchronous code division multiple access mobile communication system, and more particularly to a method and apparatus for generating a code in a synchronization channel for performing a cell search.
2. Description of the Related Art
In general, mobile communication systems can be classified into synchronous systems and asynchronous systems. The synchronous systems and the asynchronous systems classified above are respectively proposed by the United States of America and Europe. Presently, with the rapid growth of the mobile communication industry, next generation mobile communication systems, which can provide data and image services as well as typical voice services, have come to light and standardization is in progress with respect to the next-generation mobile communication systems. However, in the United States of America and Europe, which employ different mobile communication systems different standardizations are being developed. From among the next-generation mobile communication systems, the next-generation mobile communication system proposed in Europe is a third generation partnership project wideband code division multiple access (hereinafter, referred to as 3GPP W-CDMA) mobile communication system. Asynchronous operation is performed between base transceiver stations in the W-CDMA mobile communication system. Further, in order to classify the base transceiver stations, different scrambling codes are assigned. For instance, when an asynchronous base transceiver station system includes 512 cells, that is, 512 base transceiver stations, each of the 512 base transceiver stations uses a separate scrambling code from among the available 512 scrambling codes.
Also, in the W-CDMA mobile communication system as described above, a mobile station must know the scrambling code assigned to a base transceiver station which provides services to the mobile station. Accordingly, the mobile station confirms a scrambling code having the strongest signal from among the signals received from peripheral base transceiver stations. This is generally called a cell search process.
As described above, for a cell search, the mobile stations having the scrambling codes in the W-CDMA mobile communication system have used general cell search algorithms, which examine the phases of all assignable scrambling codes. However, in such general cell search algorithms, considerable time is necessary for cell search, thereby causing inefficiency.
In order to solve the problem, a multilevel cell search algorithm was proposed. In order to realize the multilevel cell search algorithm, first, 512 scrambling codes are divided into 64 code groups and then 8 scrambling codes are assigned to each code groups. Further, in order to facilitate cell search, a synchronization channel (hereinafter, referred to as SCH) and a common pilot channel (hereinafter, referred to as CPICH) are used. Herein, the SCH and the CPICH are signals provided from a base transceiver station to a mobile station through a forward link. The SCH is classified into a primary synchronization channel (hereinafter, referred to as P-SCH) and a second synchronization channel (hereinafter, referred to as S-SCH).
The multilevel cell search algorithm includes the following three cell search steps:
1) synchronizing a slot time in a slot, which is received at a maximum power, with the P-SCH transmitted from a base transceiver station;
2) when the time slot is synchronized through step 1, detecting a frame synchronization and a base transceiver station group designation code in the base transceiver station to which a mobile station belongs, by means of the S-SCH transmitted from the base transceiver station;
3) detecting a scrambling code in the base transceiver station by means of the CPICH, which is transmitted from the base transceiver station, on the basis of the frame synchronization and the base transceiver station group designation code searched in step 2, and finally searching a base transceiver station to which the mobile station belongs.
FIG. 1 is block diagram illustrating an example of a frame structure of a SCH and a CPICH used for cell search in a conventional W-CDMA system.
Referring to FIG. 1, one frame includes 15 slots. Herein, a P-SCH and a S-SCH are transmitted by (the unit of) a length as long as N (=256) chips at a starting portion in each slot and the P-SCH and the S-SCH are overlapped and transmitted and orthogonality is maintained between the two channels. In a CPICH, different scrambling codes are used according to base transceiver stations, and each of the scrambling codes has a period equal to a length of one frame. In the W-CDMA mobile communication system having a channel structure as described above, each of the different scrambling codes uses only one frame from a gold code row having a period of 218−1 and only M (=512) number of codes from the entire usable gold codes.
All cells commonly use a first synchronization code Cp utilized in the P-SCH, which is repeatedly transmitted at 256 chip interval corresponding to 1/10 of one slot in each slot. A mobile station uses the P-SCH for finding a slot timing in a received signal. That is, the mobile station receives the P-SCH and synchronizes a base transceiver station slot time by means of the first synchronization code Cp (step 1).
A second synchronization code in a base transceiver station, that is, a base transceiver station group designation code Csi,1˜Csi,15 is mapped and transmitted to the S-SCH. The mobile station, in which the time slot is synchronized by the P-SCH, detects a base transceiver station group designation code and a frame synchronization through the S-SCH. Herein, the base transceiver station group designation code is information for determining a cell group to which a base transceiver station belongs, and it uses a comma free code. The comma free code includes 64 code words and one code word includes 15 symbols. The 15 symbols are repeatedly transmitted at each frame. Herein, values of the 15 symbols are not just transmitted. Instead, the values of the 15 symbols are mapped to one second synchronization code from among the second synchronization code Csi,1, . . . , Csi,15 and the mapped values are transmitted. As shown in FIG. 1, an i-th second synchronization code corresponding to a symbol value ‘i’ for each slot is used as the second mapped synchronization code. The second synchronization code may be generally expressed by Csi,n. Herein, ‘i’ is an index which designates a scrambling code group and ‘n’ is an index which designates a random slot from among 15 slots included in one frame.
The 64 code words in the comma free code classifies 64 code groups. The comma free code has a characteristic in which a cyclic shift of each code word is unique. Accordingly, the second synchronization codes are correlated to each other with respect to the S-SCH during several slot intervals, and the correlated second synchronization codes are examined with respect to 64 code words and 15 cyclic shifts for each of the 64 code words, thereby obtaining information regarding a code group and a frame synchronization. Herein, the frame synchronization represents a synchronization with respect to a timing or a phase within one period in a scrambling spread code in a spread spectrum system. In the W-CDMA system, one period of a spread code and a frame length are 10 ms and which will be called_a frame synchronization (step 2).
Through steps 1 and 2 described above, the mobile station can obtain information regarding a slot synchronization, a base transceiver station group designation code and a frame synchronization by means of the P-SCH and the S-SCH. However, since the mobile station does not yet distinguish a scrambling code in a base transceiver station to which the mobile station belongs, from among eight scrambling codes in a code group in accordance with the obtained base transceiver station group designation code, a code synchronization is not completely implemented.
Accordingly, the mobile station correlates a pilot signal, which is received through a CPICH, with eight scrambling codes in the code group, so that the mobile station can distinguish a scrambling code, which will be used by the mobile station itself, from among eight scrambling codes (step 3).
As described above, for step 2, 15 second synchronization codes Csi,n must be mapped to slots in a S-SCH by a transmitter in a base transceiver station and the mapped codes must be transmitted. Accordingly, a method and apparatus for generating the second synchronization codes Csi,n must be proposed in the base transceiver station.
The second synchronization codes Csi,n can be generated by the following equation 1.Csi,n=(1+j)×[Hm(0)×z(0), Hm(1)×z(1), Hm(2)×z(2), . . . , Hm(255)×z(255)]m=16×(k−1)  equation 1
herein, ‘k’ represents a code index corresponding to n-th slot in i-th scrambling code group (Group i) and ‘m’ is a value determining a position of a Hadamard sequence.
As expressed by equation 1, in order to generate the second synchronization codes Csi,n, the Hadamard sequence Hm must be determined. Further, in order to determine the Hadamard sequence Hm, ‘m’ determining the position of the Hadamard sequence must be first obtained. In equation 1, ‘k’ is defined as a parameter for determining m. An example of ‘k’, which is determined by ‘i’ and ‘n’ and determines ‘m’, is shown in table 1.
TABLE 1scramblingcodeslot numbergroup#0#1#2#3#4#5#6#7#8#9#10#11#12#13#14Group 0112891015810162715716Group 111516731416310512141210Group 212115551216611216111512Group 3123186525844637Group 412166611155121151216112Group 5134741553628768Group 6141134109211210121293Group 715661491021392514113Group 816101041171316111364116Group 9161321426551310911410Group 10178572438326654Group 1117109167915181681522Group 1218129941316511351248Group 131814101411515851141054Group 14192151516107811082169Group 151915616213141011745123Group 161109111576416521213314Group 171111441329101216853156Group 1811212131472814211311811Group 191121554143167862101113Group 201154376101312514168211Group 211163121191358214741015Group 222251016113101185133138Group 2322123155835141298914Group 24236161216313136792127Group 2523829151431495515812Group 26247954911214514111616Group 272413121271510521551374Group 28259931281415121453215Group 29251172119416716914144Group 30252133312971669161312Group 31269771613312213129166Group 3227121521241013151345510Group 33271416592916111157414Group 34285125214148153912159Group 35291342138116468151511Group 3621032131681081311111635Group 3721115311614101510677143Group 38216451614711411149975Group 392346111213612144513514Group 4023651691559106415410Group 4124514461213513611111214Group 42249161041615351051566
Accordingly, ‘m’ reads ‘k’ corresponding to a particular slot in a desired scrambling code group through table 1, and ‘m’ is determined by ‘k’.
Also, in equation 1, the second synchronization codes Csi,n are generated by the Hadamard sequence Hm according to the value m, which determines the position of the Hadamard sequence, and a ‘z-sequence’. The Hadamard sequence Hm required for generating the second synchronization codes Csi,n is generated through a matrix shown in equation 2 and the z-sequence is generated through equation 3.
                                          H            m                    =                      [                                                                                H                                          m                      -                      1                                                                                                            H                                          m                      -                      1                                                                                                                                        H                                          m                      -                      1                                                                                                            -                                          H                                              m                        -                        1                                                                                                                  ]                          ,                  m          ≥          1                                    equation        ⁢                                  ⁢        2            z=<b,b,b,−b,b,b,−b,−b,b,−b,b,−b,−b,−b,−b,−b,>  equation 3
As expressed by equation 3, the z-sequence includes a ‘b-sequence’. The b-sequence is defined by equation 4.b=<x1,x2,x3,x4,x5,x6,x7,x8,x8,−x9,−x10,−x11,−x12,−x13,−x14,−x15,−x16>  equation 4
herein, x has the same value as that of ‘a-sequence’ expressed by equation 5.a=<x1,x2,x3, . . . ,x16>=<1,1,1,1,1,1,−1,−1,1,−1,1,−1,1,−1,−1,1>  equation 5
The a-sequence expressed by equation 5 is also used for generating codes utilized in a P-SCH.
For instance, when it is assumed that ‘i’ is zero and ‘n’ is three, ‘k’ is determined as eight through table 1, and therefore ‘m’ becomes 112 computed by 16×(8−1). The value ‘112’ is put into the matrix expressed by equation 2, thereby generating a Hadamard sequence corresponding to the value ‘112’. When the Hadamard sequence is generated, the generated Hadamard sequence and the z-sequence are applied to equation 1, so that a second synchronization code in a fourth slot in a first scrambling code group Group 0 is generated.
FIG. 2 is a block diagram showing a construction of an apparatus for generating the Hadamard sequence required for generating the second synchronization code as described above.
Referring to FIG. 2, a digital signal processor (not shown) determines a scrambling code group ‘Group i’, which will be used, and records code index values according to each slot, which correspond to the determined scrambling code group ‘Group i’, in a register 210. The code index values may be expressed by 5 bits and one example of the code index values is shown in table 1. As shown in table 1, a maximum value in each scrambling code group is 16 and 5 bits is necessary for expressing the value using a binary code. The register 210 outputs code index values according to each slot, which are recorded by the digital signal processor, at a particular point in time. A multiplexer 220 receives a slot count value SCH_Slot_Cnt[3:0] determining a slot position and selects/outputs one index value ‘k’ from among 15 code index values provided from the register 210, by means of the slot count value SCH_Slot_Cnt[3:0]. The slot count value SCH_Slot_Cnt[3:0] represents a slot position for generation of a second synchronization code. 5 bits ‘k’ output from the multiplexer 220 is input to a subtracter 240 through a buffer 230. The subtracter 240 subtracts one from ‘k’ and provides ‘k−1’ to a multiplier 250. The multiplier 250 multiplies ‘k−1’ by 16 and stores ‘m’, which results from the multiplication, in a buffer 260. The buffer 260 storing ‘m’ has a length of eight. An operation by the subtracter 240 and the multiplier 250 is equal to an equation “16×(k−1)” for obtaining ‘m’.
The value ‘m’ stored in the buffer 260 is transmitted to a code generator 270. The code generator 270 receives ‘m’ and then outputs a Hadamard sequence for generating a second synchronization code which will be transmitted through the desired slot. That is, the code generator 270 applies ‘m’ to equation 2, thereby generating the Hadamard sequence. The Hadamard sequence generated as described above is multiplied by a ‘z-sequence’, thereby generating a desired second synchronization code.
As described above, in order to generate the conventional second synchronization code, a code index corresponding to each slot is expressed by 5 bits. Accordingly, in order to store the code index, a 5 bits register including 16 areas is necessary. Further, a subtracter and a multiplier must be used for computing ‘m’, thereby increasing the difficulty in constructing an apparatus for generating the second synchronization code. Furthermore, this results in an increase in hardware size when a synchronization channel in a transmitter in a base transceiver station also increases.